package com.shujia.scala

/**
  * main函数必须放在object中才能运行
  *
  * object:修饰的类直接就是一个对象，单例
  *
  */
object Demo2Scala {

  /**
    * def： 定义方法的关键字
    * main： 函数名
    * args: Array[String] ： 函数的参数
    * args ： 参数名
    * Array[String] ： 参数类型  ，[String] 泛型
    * Unit： 相当于void
    * {} 中是函数体
    */

  def main(args: Array[String]): Unit = {

    println("scala")

    //在scala中使用java的类

    /**
      * 类型推断：  变量的类型会自动通过等号右边推断出来
      *
      */
    var student = new Demo3Student("001", "张三", 23)


    /**
      * 可恶意加上类型
      *
      */
    val age: Int = student.getAge

    println(student.getName)
    println(student)

    /**
      * var ；定义一个变量，变量可以重新指向其他的对象
      * val :定义不可变的变量，不能在指向其它的对象
      * 一般使用val
      */


    /**
      * String： scala中的String就是java中的String
      *
      */

    val s: String = "scala"

    val split = s.split(",")


    /**
      * println函数底层和java是一样的
      *
      */

    println(split)
    //也可以使用java的方式
    System.out.println(split)

  }
}
